Phishing website detection by checking form differences followed by false credentials submission

ABSTRACT

There is provided a method to detect phishing websites so as to protect users from sending their sensitive information to criminal servers. When browsing a web site having an input form asking sensitive information, the input fields are recorded (i.e. username field and password field). Then false credentials are generated and submitted in background. The new control layer then checks the response page content whether it includes an input form and if there is an input, it checks whether the form has the same fields as the first form. If the responded page does not have a form, or it has a form but includes different fields than the initial page&#39;s form, then the original site is identified as phishing.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of and priority to U.S. Provisional Patent Application No. 62/721,520, filed on Aug. 22, 2018 and incorporated by reference herein in its entirety.

BACKGROUND

Phishing is performed in many different ways and one of the major targets of this act is to steal user's sensitive information. The simple scenario for this malicious act is like: a phishing website pretends to be a reputable web site and requests sensitive information from the user (email, username & password, credit card information, SSN number etc.) The user provides the requested information and submits it, without knowing the site is fake. The user sensitive data is sent to criminals and information is utilized for malicious purposes.

Current techniques to detect phishing web pages are using several features of web pages such as URL syntax, DOM tree layout similarity, JavaScript codes, page style, domain identity, etc. There are also other methods that use features from email messages that contain URL itself and try to classify URL according to features extracted from email.

There are also methods that use whitelisting and blacklisting based approaches to detect phishing sites. These lists of malicious and safe web sites are being generated with either human validation or using simple rules, and when a web site is found in phishing blacklist, it is immediately marked as phishing and blocked by any protection component.

Disadvantage of blacklisting and whitelisting approach is its lack of zero-day phishing detection capability. When user browses a web page that is not either in blacklist or in whitelist, these techniques are unable to provide a classification result to user, and if this unknown web page is phishing it misses the detection. Other heuristic techniques have no interaction with the unknown page and use only static features of it trying to use similarity properties and various anomalies to classify unknown pages. This approach has potential to detect phishing pages up to some point though it is unable to catch and analyze behavior of unknown site according to user actions.

Thus there is need in new method for thorough and effective detection of phishing web sites before user submits sensitive information to malicious third parties.

SUMMARY OF THE INVENTION

The current invention is a method to detect phishing websites so to protect users from sending their sensitive information to criminal servers.

According to the present invention, when user browses a web site having an input form asking sensitive information, the input fields are being recorded (i.e. username field and password field). Then false credentials are being generated and submitted in background. Afterwards the new layer checks the response page content, whether it includes an input form and if there is an input, it checks whether the form has the same fields as the first form. If the responded page does not have a form, or it has a form but includes different fields than the initial page's form, then the original site is identified as phishing.

Invention method triggers interaction with web page and analyzes its behavior before actual real user interaction. This allows more enhanced phishing site detection, compared to existing techniques, that is capable to detect zero-day phishing web pages. This way the users are protected from these phishing websites and their sensitive data are not submitted to criminals' servers.

The system would limit the user when a website is not in whitelist but actually is not a phishing website and legit in all means. Since the proposed layer sends fake/random data to the legit website, the usability is affected. To overcome this, the users are enabled with a permissive functionality having “Allow this website” button after the fake data have been submitted once. That usability is helpful if users would want to be protected than to be sorry.

Nowadays every web browser has its own browser extension capability and lets developers to develop and publish any kind of browser extension. Proposed method is ideal to implement as a web browser extension and usable in real time while users are browsing any web page. It is possible to interact with web page's input forms in background and analyze response content invisible for user.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a depiction of general scheme of the invention.

FIG. 2 is a flowchart of one embodiment of the invention where initial phishing detection steps are taking place.

FIG. 3A is a flowchart of another embodiment of the invention where the proposed control layer detects whether visited web page is phishing or not in real-time.

FIG. 3B is a depiction of another embodiment of the invention where the proposed control layer detects whether visited web page is phishing or not in real-time.

FIG. 3C is a depiction of another embodiment of the invention where submit form example is shown.

FIG. 3D is a depiction of another embodiment of the invention where submit form example is shown.

DETAILED DESCRIPTION

The present invention discloses the method of phishing website detection by checking form differences followed by false credentials submission. The detection is implemented by introducing a control layer between the user and the website to be visited, so that proposed new layer can check whether the page requiring sensitive information is a phishing web site by comparing the initial page with input form and the response page after false credential submission.

FIG. 1 depicts a general scheme of the invention. There is a system of the control layer 2 deployed on endpoint 4 or on network 6 and tracking submit form 8 existence of the web page 10 of web site 12 being visited by users 14. End user 14 browses web pages 10 of web sites 12 and interacts with them, visiting web page URL 16. Further the control layer 2 checks whether URL 16/domain being browsed in either in blacklist 18 or in whitelist 20. If web page 10 is found in whitelist 20 it is safe. If web page 10 is found in blacklist 18, it is malicious. If web page 10 exists neither in whitelist 20 nor in blacklist 18, it is unknown. The control layer 2 may allow interaction of the user 14 with the web site 12 or the control layer 2 may block access to web page content and warn the user 14 about malicious content. Although the user 14 may force continue browsing the web page 10.

FIG. 2 is a flowchart of one embodiment of the invention where initial phishing detection steps are taking place. In step 201 the user 14 visits the website 12 through the browser 22. In step 202 the visited URL 16 is checked within existing blacklist 18 and whitelist 20 of the control layer 2. There are three different possible values for the web page 10 being visited: URL 16 is in whitelist 20, in blacklist 18, URL 16 is neither of the list, thus it is unknown. In step 203 URL16 is found in whitelist, so the website 12 is known, and it is safe. In step 204 the control layer 2 allows the viewing of the webpage 10 and all further interaction. Thus, there is no further involvement of the proposed control layer 2 until the user 14 visits another web page 10. This guarantees that the user 14 is using the safe/known websites 12 and can submit any sensitive data to these websites and perform any activity on them. In step 205 the URL 16 is found in blacklist 18. In step 206 the web page 10 is blocked. In step 207 the user 14 is informed that the web page 10 is malicious/phishing. In step 208 the URL 16 is not listed in either whitelist 20 or blacklist 18 and the web page 10 is still unknown. In step 209 additional phishing detection technique is introduced with the proposed control layer 2.

FIGS. 3A, 3B, 3C and 3D are flowchart and depictions of another embodiment of the invention where the proposed control layer 2 detects whether the visited web page 10 is phishing or not in real-time. In step 301 the user 14 visits an unknown web page 10 (web page might be safe or malicious). In step 302 the control layer 2 checks if there is a form 8 in the web page 10. The form 8 examples are shown in FIGS. 3C and 3D. In step 303 unknown web page 10 has no input form 8. In step 304 the control layer 2 allows the user 14 to interact with the web page 10 and does not block it. For this case the web page 10 is marked as not phishing. In step 305 the form 8 is found in the web page 10. In step 306 the control layer 2 extracts fields from presented form 8. As illustrated, a first field (field1) and a second field (field2) are extracted. In step 307 random credentials are being generated for a first field (field1) and a second field (field2) and form 8 is submitted in background using these random data. In step 308 a response page retrieved after form 8 submission is being collected and the content of the response is analyzed in background. It is checked whether the response web page of random credentials of submitted form includes any input form or not. In step 309 the response page has no input form 8. In step 310 the control layer 2 marks unknown web page 10 as phishing and blocks it. In step 311 the proposed control layer 2 warns the user 14 about phishing content detection. In step 312 the control layer 2 allows the user 14 to continue using the web site 12 or stop interaction with it. In step 313 the control layer 2 extracts fields from form 8 presented in the response page. In the present invention, a third field (field3) and a fourth field (field4) are extracted. In step 314 the control layer 2 controls whether extracted form fields are the same with initial form 8 fields. In step 315 form 8 has different fields than tan the original form. In step 316 the control layer 2 marks unknown web page 10 as phishing and blocks it. In step 317 the control layer 2 warns the user 14 about phishing content detection. In step 318 the control layer 2 allows the user 14 to continue using the web site 12 or stop interaction with it. In step 319 form 8 has the same fields with the original form. In step 320 the proposed layer 2 allows the user 14 to interact with the web page 10 and does not block it.

The invention is not restricted to the details of the foregoing embodiments. The invention extend to any novel one, or any novel combination, of the features disclosed in this specification (including any accompanying claims, abstract and drawings), or to any novel one, or any novel combination, of the steps of any method or process so disclosed. 

What is claimed is:
 1. A method to detect a phishing website by introducing a control layer between a user and a website to be visited, where the control layer checks whether said website, requiring sensitive information, is a phishing website by comparing input forms after a false credential submission comprising: browsing said website where said website has an input form with username and password input fields asking sensitive information; recording said input fields; generating and submitting false credentials for said input fields in background; checking by said control layer content of a response page whether said content of said response page includes said input form of said website; checking by said control layer whether said input form of said response page has the same fields as said input form of said website, if said input form of said website is included; and identifying said website as a phishing website, if said response page does not have said input form of said website, or if said response page has any input form with different fields than said input form of said website; and where said control layer detects whether said visited website is phishing or not in real-time comprising: visiting an unknown website by said user; checking by said control layer if said unknown website has said input form of said website; allowing by said control layer for said user to interact with said unknown website, if said unknown website has no input form; marking said unknown website as not phishing; extracting a first and second fields (field1 and field2) from said input form of said unknown website; generating random credentials for the first field (field 1) and the second field (field 2) and submitting said input form of said unknown website in the background using the random credentials if unknown website has said input form of said website; analyzing in background the content of said response page retrieved after said input form submission; checking whether said response page of random credentials includes any input form or not; marking said unknown website as phishing and blocking said unknown website if said response page has no input form; warning said user about phishing content detection and allowing said user to continue using said unknown website or stop interaction with said unknown website; extracting by said control layer a third and fourth fields (field3, field4) from said input form of said response page presented in said response page; checking whether any input extracted from said third and said fourth fields (field3, field4) of said input form of said response page are the same as said first and second fields (field1 and field2); marking said unknown website as phishing and blocking said unknown website if the third field (field3) and the fourth field (field4) are different from the first field (field1) and the second field (field2); warning said user about phishing content detection and allowing said user to continue using said unknown website or stop interaction with said unknown website; and allowing said user the interaction with said unknown website if the third field (field3) and the fourth field (field4) are the same as the first field (field1) and the second field (field2).
 2. The method according to claim 1 to detect said phishing website by introducing a control layer between said user and said website to be visited, where said control layer triggers an interaction with said website and analyzes its behavior before an actual interaction with said user.
 3. The method according to claim 1 to detect said phishing website by introducing a control layer between said user and said website to be visited, where said user is enabled with a functionality having an “Allow this website” button after the false credentials have been submitted once.
 4. The method according to claim 1 to detect said phishing website by introducing a control layer between said user and said website to be visited, where said control layer is implemented as a web browser extension usable in real time while said user is browsing any website. 